from time import sleep
from page_locators.campus_information_locator import CampusInformationLocators as CIL
from common.base_page import BasePage
from test_datas.string_datas import *
from test_datas.pic_data import *


class CampusInformation(BasePage):

    def __init__(self, driver):
        super().__init__(driver)
        self.driver = driver

    def digital_class_management(self, username, password):

        self.click(CIL.login_click, '登录界面点击失败截图')
        self.input(CIL.username_loc, username, '用户名输入失败截图')
        self.input(CIL.password_loc, password, '密码输入失败截图')
        self.click(CIL.loginsbt, '登录按钮点击失败截图')
        self.click(CIL.workbench_loc, '我的工作台定位失败截图')
        sleep(1)
        self.switch_window()
        sleep(1)
        self.click(CIL.cancel_password_change, '取消修改密码按钮定位失败截图')
        self.click(CIL.school_manage, '校园资讯栏目点击')


    # 发布资讯/新建图文
    def new_graphic_click(self):
        self.click(CIL.campus_information, "校园资讯菜单点击")
        self.suspension_loc(CIL.release_information, CIL.new_graphic, "发布资讯/新建图文定位失败截图")

    def information_title_error1(self):
        self.input(CIL.information_title, character_31, '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '随着年轻消费群体的崛起，年轻市场成为了一块车企都在争抢的香饽饽。7月28日，北京汽车推出一款主打新生代的紧凑型SUV——魔方，新车售价9.99万元-15.39万元。', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')


    def information_title_error2(self):
        self.input(CIL.information_title, character_30, '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '随着年轻消费群体的崛起，年轻市场成为了一块车企都在争抢的香饽饽。7月28日，北京汽车推出一款主打新生代的紧凑型SUV——魔方，新车售价9.99万元-15.39万元。', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)


    def information_title_error3(self):
        self.input(CIL.information_title, "    ", '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '随着年轻消费群体的崛起，年轻市场成为了一块车企都在争抢的香饽饽。7月28日，北京汽车推出一款主打新生代的紧凑型SUV——魔方，新车售价9.99万元-15.39万元。', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)


    def information_title_success1(self):
        self.input(CIL.information_title, character_29, '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '随着年轻消费群体的崛起，年轻市场成为了一块车企都在争抢的香饽饽。7月28日，北京汽车推出一款主打新生代的紧凑型SUV——魔方，新车售价9.99万元-15.39万元。', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)


    def information_title_success2(self):
        self.input(CIL.information_title, '?', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '随着年轻消费群体的崛起，年轻市场成为了一块车企都在争抢的香饽饽。7月28日，北京汽车推出一款主打新生代的紧凑型SUV——魔方，新车售价9.99万元-15.39万元。', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)


    def information_content_error1(self):
        self.input(CIL.information_title, '?', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_10000, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)


    def information_content_error2(self):
        self.input(CIL.information_title, '是大股东', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_10001, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_content_error3(self):
        self.input(CIL.information_title, "是大股东", '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, '                   ', '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_content_success1(self):
        self.input(CIL.information_title, '?', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_9999, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_content_success2(self):
        self.input(CIL.information_title, '?', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_5000, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, '北京魔方', '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def delete_list_first(self):
        self.click(CIL.delete_inf1, '第一条资讯删除按钮定位失败截图')
        self.click(CIL.delete_ensure, '确定删除按钮定位失败截图')

    def upload_cover_error1(self):
        self.upload_file(CIL.input_file, webp_path, "上传头像定位失败截图")

    def upload_cover_error2(self):
        self.upload_file(CIL.input_file, big_path, "上传头像定位失败截图")

    def information_keywords_error1(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, character_101, '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_keywords_error2(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, character_100, '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_keywords_success1(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, character_99, '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_keywords_success2(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, "1", '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_keywords_success3(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, "", '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def information_keywords_success4(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, "  ", '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')
        sleep(1)

    def cancel_click(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.switch_into_frame(CIL.frame, 'frame定位失败截图')
        self.input(CIL.information_content, character_500, '资讯内容定位失败截图')
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, "北京魔方", '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.cancel, '取消按钮定位失败截图')
        sleep(1)

    # 发布资讯/转载文章
    def article_reprinted_click(self):
        self.click(CIL.campus_information, "校园资讯菜单定位")
        self.suspension_loc(CIL.release_information, CIL.article_reprinted, "转载文章悬浮定位失败截图")

    def information_link_success(self):
        self.input(CIL.information_link, "https://fanyi.youdao.com/", "资讯链接定位失败截图")
        self.click(CIL.preview, "预览按钮定位失败截图")
        self.switch_into_frame(CIL.iframe, "iframe定位失败截图")

    def information_link_error1(self):
        self.input(CIL.information_link, "fanyi.youdao.com/", "资讯链接定位失败截图")
        self.click(CIL.preview, "预览按钮定位失败截图")

    def information_link_error2(self):
        self.input(CIL.information_link, "fanyi123.com/", "资讯链接定位失败截图")
        self.click(CIL.preview, "预览按钮定位失败截图")

    # 转载文章场景测试
    def scenario_article_reprinted1(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.input(CIL.information_link, "https://fanyi.youdao.com/", "资讯链接定位失败截图")
        self.click(CIL.preview, "预览按钮定位失败截图")
        self.switch_into_frame(CIL.iframe, "iframe定位失败截图")
        self.get_text(CIL.transfer, "有道翻译首页a标签同传定位失败截图")
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.input(CIL.information_keywords, "1", '资讯关键字定位失败截图')
        self.click(CIL.top_place, '是否置顶定位失败截图')
        self.click(CIL.submit, '提交按钮定位失败截图')

    def scenario_article_reprinted2(self):
        self.input(CIL.information_title, '北京魔方', '资讯标题定位失败截图')
        self.input(CIL.information_link, "https://fanyi.youdao.com/", "资讯链接定位失败截图")
        self.click(CIL.preview, "预览按钮定位失败截图")
        self.switch_into_frame(CIL.iframe, "iframe定位失败截图")
        self.get_text(CIL.transfer, "有道翻译首页a标签同传定位失败截图")
        self.switch_out_frame()
        sleep(1)
        self.upload_file(CIL.input_file, cover_pic, '上传封面定位失败截图')
        self.click(CIL.cancel, '取消按钮定位失败截图')

    def name_query1(self):
        self.suspension_loc(CIL.release_information, CIL.article_reprinted, "转载文章悬浮定位失败截图")
        self.scenario_article_reprinted1()
        self.click(CIL.editor1, "班级资讯首页列表第一个编辑栏定位失败截图")
        sleep(1)
        self.clear(CIL.title, '编辑资讯/资讯标题清空')
        self.input(CIL.title, '活动', '编辑资讯/资讯标题定位失败截图')
        self.click(CIL.submit2, "编辑资讯/提交按钮定位失败截图")
        self.input(CIL.name_box, '活动', "名称查询输入框定位失败截图")

    def name_query2(self):
        self.input(CIL.name_box, '氟昇', "名称查询输入框定位失败截图")

    def name_query3(self):
        self.suspension_loc(CIL.release_information, CIL.article_reprinted, "转载文章悬浮定位失败截图")
        self.scenario_article_reprinted1()
        self.click(CIL.editor1, "班级资讯首页列表第一个编辑栏定位失败截图")
        sleep(1)
        self.clear(CIL.title, '编辑资讯/资讯标题清空')
        self.input(CIL.title, '  ', '编辑资讯/资讯标题定位失败截图')
        self.click(CIL.submit2, "编辑资讯/提交按钮定位失败截图")
        sleep(1)
        self.input(CIL.name_box, '  ', "名称查询输入框定位失败截图")

    def name_query4(self):
        self.suspension_loc(CIL.release_information, CIL.article_reprinted, "转载文章悬浮定位失败截图")
        self.scenario_article_reprinted1()
        self.click(CIL.editor1, "班级资讯首页列表第一个编辑栏定位失败截图")
        sleep(1)
        self.clear(CIL.title, '编辑资讯/资讯标题清空')
        self.input(CIL.title, ' 7', '编辑资讯/资讯标题定位失败截图')
        self.click(CIL.submit2, "编辑资讯/提交按钮定位失败截图")
        sleep(1)
        self.input(CIL.name_box, ' 7', "名称查询输入框定位失败截图")